This is a first attempt at creating a bump map lighting effect. The funky gray plasma thing is just there for pizzazz. The world can always use more pizzazz.
-Electric Gryphon
Take your trusty ship to the far reaches of the infinite multiverse...and destroy the hostile life that you find there.
Clear each planet to warp to the next system.
Features:
-- 30 fps interlaced flight simulator
-- 3,375 or more different worlds, ranging from snowy ice-planets to verdant hills.*
-- 6 enemy types
*OK, so a lot of the worlds look similar, but the same could be said about certain other games...
Old_version:
Here's a peek at a voxel based flight simulator engine that I have been working on.
The engine is heavily inspired by Comanche:
https://en.wikipedia.org/wiki/Comanche_(series)
I've been having fun with the smooth and seamless map generation. Perhaps other folks can make use of that code.
I don't think that I am ever going to get the frame rate up to butter smooth 30fps without dropping the res so low that things are unreadable, but maybe a flight sim can settle at 15 and be okay.
Updates:
--Added controllable ship with shadow
--Up and down controls height
--Z controls thrust
--Rings to collect
--F to explore the ship / return to flight mode
-Electric Gryphon
Metablob! Now with even more tasty blobbiness, but at half the calories.
-Electric Gryphon
Structure is a rigid body simulation where you can add and remove points and struts. Essentially, this is "World of Goo" without the, well... "gooiness."
Z: add point and connecting struts to the nearest points
X: delete point and connecting struts
CLEAR: clear the screen
The jury is out on whether I will adapt this to fit the jam based on a loose interpretation of "CHAIN" reaction.
Electric Gryphon
Old version:
Clean the skies of sector Q97-C with your trusty mining laser.
Keep an eye out for debris, not to mention Turrets and Tormentors.
Controls:
Arrow keys control roll and yaw.
X-key accelerates.
Z-key fires laser.
Tips:
Full 3D navigation can be tricky, so keep an eye on your radar at the bottom.
It can be easier to sweep the laser up over targets than to try to hit them dead on.
Watch out because the laser uses your ship's power, which only refills slowly over time.
Version Notes:
Added music by Robby Duguay
-www.robbyduguay.com
Added sound effects
A funny thing happened on the way to making an actual game.
I found this odd fox statue floating in between the bits and bytes. I hope it's not lonely.
-ElectricGryphon
Hi All,
Has anyone built up inverse-sine and inverse-cosine functions?
Right now, we have cos(x), sin(x), and atan2(dx,dy). If all else fails, I can create a table function to look these up, but figured I'd ask around to avoid duplicating the work.
-Electric Gryphon
Manged to get 16 frames of full motion (if chunky) video compressed into here before running into the limits of the compressed cart size. Frames are stored as run-length encoded images, with only the difference between frames being noted/redrawn.
I used a custom python script and some elbow grease (file renaming and bulk resizing) to get the images converted into the string format.
-Electric Gryphon
This is a first pass at trying to do something like Out of This World (or Another World depending on which side of the pond you land on).
Background is a static, shaded vector image that is rendered once at the beginning of the scene into a temporary buffer and then copied to the screen every frame.
The man is a moving vector animation that is rendered to the screen every frame.
Things aren't really structured for an actual game yet, but at least this shows that the concept could work.
It's a filled polygon, smoothly tweened animation of a running cat. There's still a decent amount of space left for a program, or even more complex animation.
Thanks to Eadweard Muybridge for taking photos in the 1880's that are still useful today.
-Electric Gryphon
Relive the joy of the 80's with some key mashing and marble gobbling. Feed those peckish pachyderms as fast as you can to win.
This is a two to four player, shoulder to shoulder kind of game.
Up Arrow: Red
Down Arrow: Yellow
Left Arrow: Blue
Right Arrow: Green
If anyone feels an urge to replace the music with something better, please be my guest.
--Electric Gryphon
Here is the first pass at the Pico-8 Flight Simulator in filled and shaded 3D.
Explore an expansive, mountainous world and avoid crashing.
(Simulation might be a stretch, as nothing about the aircraft physics is actually modeled... but you have to start somewhere.)
Controls:
Left / Right Arrow: Turn
Up / Down Arrow: Increase / Decrease Pitch
I was feeling down about the frame rate, but then I looked at videos of flight simulators from the late 80's and early 90's and that made me feel better :-D.
Changes:
--Fixed movement bug
Next tasks:
--Cockpit graphics
--More varied terrain
--Some sort of goal (perhaps travel from airport to airport and land... like a real flight sim...)
-Electric Gryphon
This is a stepping stone to an overly-ambitious project.
I'm looking for a better way to sort a table of triangles--currently sorting speed for around 150 triangles is preventing me from having solid filled triangles.
Does anyone have a good quicksort implementation that could sort a list of triangles, where each triangle contains 3 points and a centroid "z" value?
triangle_list={} function new_triangle(p1,p2,p3,z,color) t={} t.p1=p1 t.p2=p2 t.p3=p3 t.z=z t.color=color add(triangle_list,t) end function sort_by_z() ... end |
That said, I actually like the way that the wire-frame looks, and backface culling almost makes hills appear opaque.
I'm playing with lighting effects to create a more moody atmosphere. Frame rate just isn't quite up to snuff though.
Old version:
It's a complete game now, with a title screen and a final boss.
--Arrow keys to move
--Z-key to fire
--X-key to strafe
Defeat the Star Beast on level three!
You start in the elevator. Use the Z key at the console to go up one floor, provided you have destroyed all robots and collected the keycard, which is hidden in the level.
--This is inspired by AfBu's 3D experiment, as well as Lode's Computer Graphics Tutorial on ray-casting, which uses a different stepping method than AfBu. (http://lodev.org/cgtutor/raycasting.html)
--Horizontal distortion effect borrowed from qbicfeet
Old versions:
Compete in a 3D, high-speed go-cart race against computer-controlled mouse opponents in three challenging tracks.
New Features:
--Improved screen size and resolution
--Music from Gruber
This is a first attempt to render textured height maps in something close to real time. I guess these would be considered voxels?
I am casting rays from the screen and checking intersect with the floor plane to get an x,z coordinate. Then I load a pixel from the map for the color and a pixel from the map at an offset location to get a height value.
A neat feature is that shadows could be baked into the texture.
Code is ugly, buggy, and poorly optimized...
Issues:
--In order to keep the frame rate up while moving, I had to double pixel size.
--Looking up a pixel on the map is very slow, but I want to be able to handle 512x512 height maps and this is the best way I can think of. (512x512 color map and 512x512 height map)
--tall vertical walls jump in and out of existence, especially when at a distance. Actually, this happens with all pixels. Rounding errors perhaps?
I'm going to look at Zep's Raycast demo and see if there is anything in there that I can borrow.
-ElectricGryphon
Old version:
It's a confetti factory simulation! (This is shamelessly inspired by an old AfterDark screensaver that I recall.)
Hit 'Z' to open or close valves.
Hit 'X' to change direction of conveyors.
Try to get the confetti into the correctly colored out bin in order to advance to the next level. Mixed confetti will reduce your score because it's really hard to sort after the fact.
-Electric Gryphon
Old version:
I was inspired to start playing with wave physics.
-Electric Gryphon
View Older Posts